(1) Field of the Invention
The present invention is related to the field of video coding, more specifically, the present invention is a method and an apparatus for adaptively enabling and disabling PB frames mode in an H.263 video coder.
(2) Related Art
The ITU-T H.263 standard (ITU-T std. H.263-1995, published March 1996) is a standard for a coded representation which can be used for compressing the moving picture component of audio-visual services at low bit rates. The coding algorithm of the H.263 is a hybrid of inter-picture prediction which utilizes temporal redundancy, and transform coding of the remaining signal to reduce spatial redundancy.
There are numerous different optional modes in H.263 including a PB frames mode in which two pictures are coded as one unit. The term "PB" stems from P-picture and B-picture. A PB-frame comprises one P-picture predicted from the previous decoded P-picture and one B-picture predicted from both the previous decoded P-picture and the P-picture currently being decoded. With this option, portions of the B-picture maybe bi-directionally predicted from the past and future pictures.
There are various trade-offs in selecting an optional mode provided by H.263. Because the modes are optional, it is not necessary for the decoder to support any of the optional modes. If a decoder supports a given mode, the encoder has the option to enable or disable that given mode.
Currently, few methods exist for determining whether to enable or disable an optional mode for H.263. Typically, an optional mode is enabled at the beginning of a video data sequence and stays on throughout the entire length of the video data sequence. The disadvantage of this method is that with some types of video, the optional mode results in decreased video quality. For other types of video, the increase in video quality does not justify the increase in the computational overhead associated with the optional mode being enabled.
Therefore a method and an apparatus are desirable for allowing a feedback mechanism to determine whether to enable or disable an optional mode to produce the best video quality given a video data sequence.